package com.cxhc.system.mapper.hcdoc;

import com.cxhc.common.annotation.DataSource;
import com.cxhc.common.enums.DataSourceType;
import com.cxhc.system.domain.hcdoc.HdProjectInfo;
import org.apache.ibatis.annotations.Param;
import java.util.List;

/**
 * 用户表 数据层
 * 
 * @author wuxuan
 */
public interface HdProjectInfoMapper
{


    /**
     * 查询环创文档中心项目信息
     *
     * @param id 账号
     * @return 环创文档中心用户信息
     */
    @DataSource(DataSourceType.HC_DOC)
    HdProjectInfo selectById(@Param("id")String id);

    /**
     * 新增环创文档中心项目信息
     *
     * @param hdProjectInfo HdProjectInfo
     * @return 环创文档中心用户信息
     */
    @DataSource(DataSourceType.HC_DOC)
    int insert(HdProjectInfo hdProjectInfo);

    /**
     * 查询环创文档中心项目信息列表
     *
     * @param hdProjectInfo HdProjectInfo
     * @return 环创文档中心用户信息
     */
    @DataSource(DataSourceType.HC_DOC)
    List<HdProjectInfo> selectList(HdProjectInfo hdProjectInfo);


    /**
     * 查询下一个支付节点日期在今天之后的项目信息列表
     *
     * @param hdProjectInfo hdProjectInfo
     * @return 环创文档中心用户信息
     */
    @DataSource(DataSourceType.HC_DOC)
    List<HdProjectInfo> selectListByNextPayNode(HdProjectInfo hdProjectInfo);

    /**
     * 新增环创文档中心项目信息
     *
     * @param hdProjectInfo HdProjectInfo
     * @return 环创文档中心用户信息
     */
    @DataSource(DataSourceType.HC_DOC)
    int update(HdProjectInfo hdProjectInfo);

    /**
     * 删除
     *
     * @param id id
     * @return 环创文档中心用户信息
     */
    @DataSource(DataSourceType.HC_DOC)
    int deleteById(String id);


    /**
     * 查询环创文档中心项目信息列表
     *
     * @param branchInfoId branchInfoId
     * @return 环创文档中心用户信息
     */
    @DataSource(DataSourceType.HC_DOC)
    List<HdProjectInfo> selectListForBudget(@Param("branchInfoId")String branchInfoId,@Param("year")String year);

    /**
     * 查询环创文档中心项目信息
     *
     * @param projectNo projectNo
     * @return 环创文档中心用户信息
     */
    @DataSource(DataSourceType.HC_DOC)
    HdProjectInfo selectByProjectNo(@Param("projectNo")String projectNo);

}
